Generally, in commercial user speech dialog systems, two of the main hurdles in terms of cost efficiency are the need to customize every interaction with the call processing system, and the need to provide a single call processing system that can accommodate the different types of users. For example, users could be novices or experienced, cooperative or distracted, and/or could be calling from a quiet environment versus a noisy environment, etc.
The varying needs that the users' require from the call system create problems for at least a percentage of the callers. No matter how well designed and fine-tuned a spoken dialog system is setup to perform, there will always be a percentage of callers that will have difficulties interacting with the call system and its corresponding automated features, and thus will be unsatisfied with the call experience. Generally, in dialog-based systems that automate call center functionality, the balance between automation rate and caller satisfaction is controlled by rules that determine when to transfer a call to a call center agent.
One common rule of thumb is after three consecutive errors detected in one dialog state or session, the caller is automatically transferred to a live agent. However, this approach has the drawback and disadvantage of not taking into account the caller experience up to the point of the dialog state where the errors begin happening. This default rule of thumb transfer rule does not take into account any other feature or event except for the specific error type that is occurring. In other words, the transfer decision is based on a single feature as opposed to utilizing multiple features for the decision making.
There have been several previous approaches to measure caller experience and/or to predict problematic calls. For example, the information of the first two to four dialog turns may be used to predict if a caller will experience difficulties later on, but this method does not apply to every possible dialog in a call processing system. In another example, the caller experience is automatically calculated for an entire call. However, the calculation is derived from application logs after a call is completed. In yet another example, a method is used to calculate, at each turn in the call processing system, whether the cost of transferring is less than the cost of keeping the caller in the system. These previous solutions to handling user calls are each limited in their capability to provide caller assistance and caller satisfaction.